Copyright ‪Prof. Dr. Suhartono S.Si M.Kom UIN Maulana Malik Ibrahim Malang
saya akan mendemokan cara menganalisis sebuah gambar dalam bentuk matrix. caranya sangat mudah!!!!
yang pertama harus kamu lakukan adalah menginstall packagenya serta library EBImage. setelah itu tinggalmasukkan code seperti dibawah ini dengan gambar sesuai dengan keinginan kamu.
untk memanggil gambarnya kamu harus terlebih dulu menginstall librarynya ya :). jangan lupa loh.
library(EBImage)
Setelah itu kamu bisa langsung analisis gambarnya loh, dalam bentuk matrix lagi. caranya tinggal kamu implementasikan kode dibawah ini ya.
Image <- readImage("C://Users/bambang/OneDrive/Desktop/masjid.jpg")
print(Image)
## Image
## colorMode : Color
## storage.mode : double
## dim : 1920 1080 3
## frames.total : 3
## frames.render: 1
##
## imageData(object)[1:5,1:6,1]
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
## [2,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
## [3,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
## [4,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
## [5,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
Kamu juga bisa melihat histogram dari gambarnya juga dengan kode dibawah ini. kamu juga bisa memanipulasi gambarnya loh,, tinggal menggunakan code-code dibawah ya. Happy Learning :)
#plot data
hist(Image)
# Brightness
Image1 <- Image + 0.2
Image2 <- Image - 0.2
par(mfrow= c(1,2))
plot(Image1)
plot(Image2)
#Adjusting Contrast
Image3 <- Image * 0.5
Image4 <- Image * 2
par(mfrow= c(1,2))
plot(Image3)
plot(Image4)
#Gamma Correction
Image5 <- Image ^ 2
Image6 <- Image ^ 0.7
par(mfrow= c(1,2))
plot(Image5)
plot(Image6)
#Spatial Transformation
Imagetr <- translate(rotate(Image, 45), c(50, 0))
display(Imagetr)
#Color Management
colorMode(Image) <- Grayscale
display(Image)
## Only the first frame of the image stack is displayed.
## To display all frames use 'all = TRUE'.
print(Image)
## Image
## colorMode : Grayscale
## storage.mode : double
## dim : 1920 1080 3
## frames.total : 3
## frames.render: 3
##
## imageData(object)[1:5,1:6,1]
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
## [2,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
## [3,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
## [4,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
## [5,] 0.3921569 0.3921569 0.3921569 0.3921569 0.3960784 0.3960784
colorMode(Image) <- Color
display(Image)
#filtering
fLow <- makeBrush(21, shape= 'disc', step=FALSE)^2
fLow <- fLow/sum(fLow)
Image.fLow <- filter2(Image, fLow)
display(Image.fLow)
fHigh <- matrix(1, nc = 3, nr = 3)
fHigh[2, 2] <- -8
Image.fHigh <- filter2(Image, fHigh)
display(Image.fHigh)
DAFTAR PUSTAKA https://thinkstudioo.blogspot.com/2018/03/analisis-image-menggunakan-ebimage-di-r.html